/**
 * @param {number[][]} matrix
 * @return {void} Do not return anything, modify matrix in-place instead.
 */
var setZeroes = function(matrix) {
    let h=matrix.length;
    let w=matrix[0].length;
    let i=0,j=0,k=0;
    for(i=0;i<w;i++){
        for(j=0;j<h;j++){
            if(matrix[j][i]==0){
                for(k=0;k<w;k++){
                    if(matrix[j][k]!=0){
                        matrix[j][k]=Infinity;
                    }
                }
                for(k=0;k<h;k++){
                    if(matrix[k][i]!=0){
                        matrix[k][i]=Infinity;
                    }
                }
            }
        }
    }
    for(i=0;i<w;i++){
        for(j=0;j<h;j++){
            if(matrix[j][i]==Infinity){
                matrix[j][i]=0;
            }
        }
    }    
};

/*
执行用时：
104 ms
, 在所有 JavaScript 提交中击败了
83.54%
的用户
内存消耗：
41.7 MB
, 在所有 JavaScript 提交中击败了
10.79%
的用户
*/